<template>
  <div class="app-container">
    <el-row :gutter="20">
      <el-col :span="6" :xs="24">
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>个人信息</span>
          </div>
          <div>
            <div class="text-center">
              <userAvatar :user="user" />
            </div>
            <ul class="list-group list-group-striped">
              <li class="list-group-item">
                <svg-icon icon-class="user" />用户名称
                <div class="pull-right">{{ user.userName }}</div>
              </li>
              <li class="list-group-item">
                <svg-icon icon-class="phone" />手机号码
                <div class="pull-right">{{ user.phonenumber }}</div>
              </li>
              <li class="list-group-item">
                <svg-icon icon-class="email" />用户邮箱
                <div class="pull-right">{{ user.email }}</div>
              </li>
              <!-- <li class="list-group-item">
                <svg-icon icon-class="tree" />所属部门
                <div class="pull-right" v-if="user.dept">{{ user.dept.deptName }} / {{ postGroup }}</div>
              </li> -->
              <!-- <li class="list-group-item">
                <svg-icon icon-class="peoples" />所属角色
                <div class="pull-right">{{ roleGroup }}</div>
              </li> -->
              <li class="list-group-item">
                <svg-icon icon-class="date" />创建日期
                <div class="pull-right">{{ user.createTime }}</div>
              </li>
            </ul>
          </div>
        </el-card>
      </el-col>
      <el-col :span="18" :xs="24">
        <el-card>
          <div slot="header" class="clearfix">
            <span>基本资料</span>
          </div>
          <el-tabs v-model="activeTab">
            <el-tab-pane label="基本资料" name="userinfo">
              <userInfo :user="user" />
            </el-tab-pane>
            <el-tab-pane label="修改密码" name="resetPwd">
              <resetPwd />
            </el-tab-pane>
          </el-tabs>
        </el-card>
      </el-col>
    </el-row>
  </div>
</template>

<script>
  import {getImg } from '@/api/file'
import userAvatar from "./userAvatar";
import userInfo from "./userInfo";
import resetPwd from "./resetPwd";
import { getUserProfile } from "@/api/system/user";

export default {
  name: "Profile",
  components: { userAvatar, userInfo, resetPwd },
  data() {
    return {
      user: {},
      roleGroup: {},
      postGroup: {},
      activeTab: "userinfo"
    };
  },
  created() {
    this.getUser();
  },
  methods: {
    async getUser() {
  //     getUserProfile().then(response => {
		// 		console.log(response.data,'ressssssssgetuser')
		// let path = response.data.avatar.slice(1)
		// // this.unpdateAvatar(path)
		// // getImg(path).then(res=>{
		// // 	const buffer = Buffer.from(res)
		// // 	let base64 = this.arrayBufferToBase64(buffer)
		// // 	let base64Url = "data:image/png;base64," + base64
		// // 	this.avatarImg = base64Url
		// // })
		
  //       this.user = response.data;
		// this.user.avatar = this.avatarImg
		// console.log(this.avatarImg,'新修改的user')
  //       this.roleGroup = response.roleGroup;
  //       this.postGroup = response.postGroup;
  //     });
		let response =  await getUserProfile()
		let path = response.data.avatar.slice(1)
		let res1 = await getImg(path)
		const buffer = Buffer.from(res1)
		let base64 = this.arrayBufferToBase64(buffer)
		let base64Url = "data:image/png;base64," + base64
		this.user = response.data;
		this.user.avatar = base64Url
		console.log(this.user,'新修改的user')
        this.roleGroup = response.roleGroup;
        this.postGroup = response.postGroup;
    },
		
	async unpdateAvatar(path) {
	  let res1 = await getImg(path)
	  const buffer = Buffer.from(res1)
	  let base64 = this.arrayBufferToBase64(buffer)
	  let base64Url = "data:image/png;base64," + base64
	  this.avatarImg = base64Url
	  // console.log(base64Url,'删除的数据')
	},
	arrayBufferToBase64 (buffer) {
		  var binary = ''
		  var bytes = new Uint8Array(buffer)
		  var len = bytes.byteLength
		  for (var i = 0; i < len; i++) {
			binary += String.fromCharCode(bytes[i])
		  }
		  return window.btoa(binary)
		},
  }
};
</script>
